It is often desirable to have two or more different types of integrated circuits packaged together. For example, it is often convenient to have one or more logic integrated circuits, such as an application specific integrated circuits, packaged with one or more memory integrated circuits, such as random access memory and read only memory. In such an arrangement, the memory integrated circuits can conveniently contain information such as operational instructions for the logic integrated circuit and, additionally, other memory integrated circuits can also receive information that is sent from or is to be sent to other circuits. By placing such desired integrated circuits within a single package, a designer can generally increase the speed and reduce the complexity and cost of the overall circuit design. Circuit reliability and tolerance may also increase.
Typically, such a multi chip module is assembled by first placing the various integrated circuits desired on a common package substrate, and then making the electrical connections between the integrated circuits and the package substrate. For example, if the integrated circuits are wire bonded, all of the wire bonds between the package substrate and the integrated circuits are made. More typically, however, the integrated circuits are flip chips, and the electrical connections are made by reflowing the solder bumps between the integrated circuits and the multi chip module package substrate, and then under filling the space between the integrated circuits and the package substrate. The module with the attached integrated circuits is then tested to ensure that the electrical connections were properly made to each integrated circuit, that neither the integrated circuits nor the substrate were damaged during the process, and that the multi chip module functions properly as a whole.
Although all of the components in the operation described above may have been tested prior to the described assembly, sometimes a failure is detected in the assembled module. For example, even though all of the integrated circuits may have been tested prior to assembly, and the package substrate is tested prior to assembly, and all of the components passed the testing, sometimes the assembled multi chip module does not function properly. Because all of the integrated circuits have already been attached to the package substrate prior to the time at which the testing is performed, if the multi chip module does not function properly, the entire module typically must be scrapped, even if the problem is with only one of the integrated circuits. Thus, one or more good integrated circuits may need to be scrapped just because a single integrated circuit is not functional, or has not been properly attached to the package substrate. This, of course, adds undesirable and unnecessary expense to the overall cost of the module fabrication.
What is needed, therefore, is a system by which the failure of an individual integrated circuit does not require the scrap of other, functional integrated circuits.